package com.ruoyi.sl.domain;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.Map;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.jsonwebtoken.impl.crypto.MacProvider;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 报工单对象 sl_rwork
 * 
 * @author admin
 * @date 2024-06-06
 */
public class SlRwork extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 报工ID */
    private Long rworkId;

    /** 报工日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date rworkDate;

    /** 模块 */
    private Long moduleId;

    /** 车间 */
    private Long workshopId;

    /** 早晚班 */
    private String rworkBz;

    /** 年 */
    private String rworkYear;

    /** 月 */
    private String rworkMonth;

    /** 日 */
    private String rworkDay;

    /** 是否审核通过 */
    private String isApproved;

    /** 直属领导 */
    private String leaderUser;

    /** 生产鼓号 */
    @Excel(name = "生产鼓号")
    private String wtermDnumber;

    /** 订单编号 */
    @Excel(name = "订单编号")
    private String wtermOnumber;

    /** 大工序ID */
    @Excel(name = "大工序ID")
    private Long gprocessId;

    /** 小工序ID */
    @Excel(name = "小工序ID")
    private Long processId;

    /** 品种 */
    @Excel(name = "品种")
    private String breedName;

    /** 颜色 */
    @Excel(name = "颜色")
    private String colourName;

    /** 工艺要求 */
    @Excel(name = "工艺要求")
    private String rworkTr;

    /** 单位 */
    @Excel(name = "单位")
    private String rworkDw;

    /** 计划生产 */
    @Excel(name = "计划生产")
    private BigDecimal rworkPlan;

    /** 实际生产 */
    @Excel(name = "实际生产")
    private BigDecimal rworkActual;

    /** 重复次数 */
    @Excel(name = "重复次数")
    private Integer rworkRepetitions;

    /** 开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date rworkStart;

    /** 结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date rworkEnd;

    /** 工作时长 */
    @Excel(name = "工作时长")
    private BigDecimal rworkDuration;

    /** 工序单价 */
    @Excel(name = "工序单价")
    private BigDecimal processPay;

    /** 预估工资 */
    @Excel(name = "预估工资")
    private BigDecimal estimatePay;

    @Excel(name = "大工序", targetAttr = "gprocessName", type = Excel.Type.EXPORT)
    private SlGprocess slGprocess;

    @Excel(name = "小工序", targetAttr = "processName", type = Excel.Type.EXPORT)
    private SlProcess slProcess;

    @Excel(name = "模块", targetAttr = "muduleName", type = Excel.Type.EXPORT)
    private SlModule slModule;

    @Excel(name = "车间", targetAttr = "workshopName", type = Excel.Type.EXPORT)
    private SlWorkshop slWorkshop;

    /** 报工单ID */
    @Excel(name = "报工单ID")
    private Long rfworkId;

    /** 报工人 */
    @Excel(name = "报工人")
    private String rworkUser;

    /** 扣款 */
    @Excel(name = "扣款")
    private BigDecimal rworkDm;

    /** 实际张数 */
    @Excel(name = "实际张数")
    private BigDecimal rworkRepactual;

    /** 报工人 */
    @Excel(name = "报工人")
    private String rworkNick;

    /** 批量生产鼓号 */
    @Excel(name = "批量生产鼓号")
    private String wtermBatch;

    /** 批量实际生产 */
    @Excel(name = "批量实际生产")
    private String actualBatch;

    /** 是否批量Y是N不是 */
    @Excel(name = "是否批量Y是N不是")
    private String isBatch;

    private List<Map> wtermInfo;


    /** 操作人信息 */
    private List<SlRworkRmember> slRworkRmemberList;

    public List<Map> getWtermInfo() {
        return wtermInfo;
    }

    public void setWtermInfo(List<Map> wtermInfo) {
        this.wtermInfo = wtermInfo;
    }

    public String getWtermBatch() {
        return wtermBatch;
    }

    public void setWtermBatch(String wtermBatch) {
        this.wtermBatch = wtermBatch;
    }

    public String getActualBatch() {
        return actualBatch;
    }

    public void setActualBatch(String actualBatch) {
        this.actualBatch = actualBatch;
    }

    public String getIsBatch() {
        return isBatch;
    }

    public void setIsBatch(String isBatch) {
        this.isBatch = isBatch;
    }

    public Long getRworkId() {
        return rworkId;
    }

    public void setRworkId(Long rworkId) {
        this.rworkId = rworkId;
    }

    public Date getRworkDate() {
        return rworkDate;
    }

    public void setRworkDate(Date rworkDate) {
        this.rworkDate = rworkDate;
    }

    public Long getModuleId() {
        return moduleId;
    }

    public void setModuleId(Long moduleId) {
        this.moduleId = moduleId;
    }

    public Long getWorkshopId() {
        return workshopId;
    }

    public void setWorkshopId(Long workshopId) {
        this.workshopId = workshopId;
    }

    public String getRworkBz() {
        return rworkBz;
    }

    public void setRworkBz(String rworkBz) {
        this.rworkBz = rworkBz;
    }

    public String getRworkYear() {
        return rworkYear;
    }

    public void setRworkYear(String rworkYear) {
        this.rworkYear = rworkYear;
    }

    public String getRworkMonth() {
        return rworkMonth;
    }

    public void setRworkMonth(String rworkMonth) {
        this.rworkMonth = rworkMonth;
    }

    public String getRworkDay() {
        return rworkDay;
    }

    public void setRworkDay(String rworkDay) {
        this.rworkDay = rworkDay;
    }

    public String getIsApproved() {
        return isApproved;
    }

    public void setIsApproved(String isApproved) {
        this.isApproved = isApproved;
    }

    public String getLeaderUser() {
        return leaderUser;
    }

    public void setLeaderUser(String leaderUser) {
        this.leaderUser = leaderUser;
    }

    public String getWtermDnumber() {
        return wtermDnumber;
    }

    public void setWtermDnumber(String wtermDnumber) {
        this.wtermDnumber = wtermDnumber;
    }

    public String getWtermOnumber() {
        return wtermOnumber;
    }

    public void setWtermOnumber(String wtermOnumber) {
        this.wtermOnumber = wtermOnumber;
    }

    public Long getGprocessId() {
        return gprocessId;
    }

    public void setGprocessId(Long gprocessId) {
        this.gprocessId = gprocessId;
    }

    public Long getProcessId() {
        return processId;
    }

    public void setProcessId(Long processId) {
        this.processId = processId;
    }

    public String getBreedName() {
        return breedName;
    }

    public void setBreedName(String breedName) {
        this.breedName = breedName;
    }

    public String getColourName() {
        return colourName;
    }

    public void setColourName(String colourName) {
        this.colourName = colourName;
    }

    public String getRworkTr() {
        return rworkTr;
    }

    public void setRworkTr(String rworkTr) {
        this.rworkTr = rworkTr;
    }

    public String getRworkDw() {
        return rworkDw;
    }

    public void setRworkDw(String rworkDw) {
        this.rworkDw = rworkDw;
    }

    public BigDecimal getRworkPlan() {
        return rworkPlan;
    }

    public void setRworkPlan(BigDecimal rworkPlan) {
        this.rworkPlan = rworkPlan;
    }

    public BigDecimal getRworkActual() {
        return rworkActual;
    }

    public void setRworkActual(BigDecimal rworkActual) {
        this.rworkActual = rworkActual;
    }

    public Integer getRworkRepetitions() {
        return rworkRepetitions;
    }

    public void setRworkRepetitions(Integer rworkRepetitions) {
        this.rworkRepetitions = rworkRepetitions;
    }

    public Date getRworkStart() {
        return rworkStart;
    }

    public void setRworkStart(Date rworkStart) {
        this.rworkStart = rworkStart;
    }

    public Date getRworkEnd() {
        return rworkEnd;
    }

    public void setRworkEnd(Date rworkEnd) {
        this.rworkEnd = rworkEnd;
    }

    public BigDecimal getRworkDuration() {
        return rworkDuration;
    }

    public void setRworkDuration(BigDecimal rworkDuration) {
        this.rworkDuration = rworkDuration;
    }

    public BigDecimal getProcessPay() {
        return processPay;
    }

    public void setProcessPay(BigDecimal processPay) {
        this.processPay = processPay;
    }

    public BigDecimal getEstimatePay() {
        return estimatePay;
    }

    public void setEstimatePay(BigDecimal estimatePay) {
        this.estimatePay = estimatePay;
    }

    public SlGprocess getSlGprocess() {
        return slGprocess;
    }

    public void setSlGprocess(SlGprocess slGprocess) {
        this.slGprocess = slGprocess;
    }

    public SlProcess getSlProcess() {
        return slProcess;
    }

    public void setSlProcess(SlProcess slProcess) {
        this.slProcess = slProcess;
    }

    public SlModule getSlModule() {
        return slModule;
    }

    public void setSlModule(SlModule slModule) {
        this.slModule = slModule;
    }

    public SlWorkshop getSlWorkshop() {
        return slWorkshop;
    }

    public void setSlWorkshop(SlWorkshop slWorkshop) {
        this.slWorkshop = slWorkshop;
    }

    public String getRworkUser() {
        return rworkUser;
    }

    public void setRworkUser(String rworkUser) {
        this.rworkUser = rworkUser;
    }

    public BigDecimal getRworkDm() {
        return rworkDm;
    }

    public void setRworkDm(BigDecimal rworkDm) {
        this.rworkDm = rworkDm;
    }

    public List<SlRworkRmember> getSlRworkRmemberList() {
        return slRworkRmemberList;
    }

    public void setSlRworkRmemberList(List<SlRworkRmember> slRworkRmemberList) {
        this.slRworkRmemberList = slRworkRmemberList;
    }

    public Long getRfworkId() {
        return rfworkId;
    }

    public void setRfworkId(Long rfworkId) {
        this.rfworkId = rfworkId;
    }

    public BigDecimal getRworkRepactual() {
        return rworkRepactual;
    }

    public void setRworkRepactual(BigDecimal rworkRepactual) {
        this.rworkRepactual = rworkRepactual;
    }

    public String getRworkNick() {
        return rworkNick;
    }

    public void setRworkNick(String rworkNick) {
        this.rworkNick = rworkNick;
    }

    @Override
    public String toString() {
        return "SlRwork{" +
                "rworkId=" + rworkId +
                ", rworkDate=" + rworkDate +
                ", moduleId=" + moduleId +
                ", workshopId=" + workshopId +
                ", rworkBz='" + rworkBz + '\'' +
                ", rworkYear='" + rworkYear + '\'' +
                ", rworkMonth='" + rworkMonth + '\'' +
                ", rworkDay='" + rworkDay + '\'' +
                ", isApproved='" + isApproved + '\'' +
                ", leaderUser='" + leaderUser + '\'' +
                ", wtermDnumber='" + wtermDnumber + '\'' +
                ", wtermOnumber='" + wtermOnumber + '\'' +
                ", gprocessId=" + gprocessId +
                ", processId=" + processId +
                ", breedName='" + breedName + '\'' +
                ", colourName='" + colourName + '\'' +
                ", rworkTr='" + rworkTr + '\'' +
                ", rworkDw='" + rworkDw + '\'' +
                ", rworkPlan=" + rworkPlan +
                ", rworkActual=" + rworkActual +
                ", rworkRepetitions=" + rworkRepetitions +
                ", rworkStart=" + rworkStart +
                ", rworkEnd=" + rworkEnd +
                ", rworkDuration=" + rworkDuration +
                ", processPay=" + processPay +
                ", estimatePay=" + estimatePay +
                ", slGprocess=" + slGprocess +
                ", slProcess=" + slProcess +
                ", slModule=" + slModule +
                ", slWorkshop=" + slWorkshop +
                ", rfworkId=" + rfworkId +
                ", rworkUser='" + rworkUser + '\'' +
                ", rworkDm=" + rworkDm +
                ", rworkRepactual=" + rworkRepactual +
                ", rworkNick='" + rworkNick + '\'' +
                ", slRworkRmemberList=" + slRworkRmemberList +
                '}';
    }
}
